<% component = metadata.transforms.grok_parser %>

<%= component_header(component) %>

## Config File

<%= component_config_example(component) %>

## Options

<%= options_table(component.options.to_h.values.sort) %>

## How It Works [[sort]]

<%= component_sections(component) %>

### Available Patterns

Vector uses the Rust [`grok` library][url.rust_grok_library]. All patterns
[listed here][url.grok_patterns] are supported. It is recommended to use
maintained patterns when possible since they can be improved over time by
the community.

### Debugging

We recommend the [Grok debugger][url.grok_debugger] for Grok testing.

### Performance

Grok is approximately 50% slower than the [`regex_parser` transform][docs.regex_parser_transform].
We plan to add a [performance test][docs.performance] for this in the future.
While this is still plenty fast for most use cases we recommend using the
[`regex_parser` transform][docs.regex_parser_transform] if you are experiencing
performance issues.

## Troubleshooting

<%= component_troubleshooting(component) %>

## Resources

<%= component_resources(component) %>